home *** CD-ROM | disk | FTP | other *** search
/ Internet Info 1997 December / Internet_Info_CD-ROM_Walnut_Creek_December_1997.iso / ietf / urn / urn-archives / urn-ietf.archive.9703 / 000027_owner-urn-ietf _Wed Mar 12 12:29:34 1997.msg < prev    next >
Internet Message Format  |  1997-04-01  |  17KB

  1. Received: (from daemon@localhost)
  2.     by services.bunyip.com (8.8.5/8.8.5) id MAA02214
  3.     for urn-ietf-out; Wed, 12 Mar 1997 12:29:34 -0500 (EST)
  4. Received: from mocha.bunyip.com (mocha.Bunyip.Com [192.197.208.1])
  5.     by services.bunyip.com (8.8.5/8.8.5) with SMTP id MAA02209
  6.     for <urn-ietf@services.bunyip.com>; Wed, 12 Mar 1997 12:29:29 -0500 (EST)
  7. Received: from mailhub.axion.bt.co.uk by mocha.bunyip.com with SMTP (5.65a/IDA-1.4.2b/CC-Guru-2b)
  8.         id AA22915  (mail destined for urn-ietf@services.bunyip.com); Wed, 12 Mar 97 12:29:22 -0500
  9. Received: from ferao.jungle.bt.co.uk by mailhub.axion.bt.co.uk with SMTP (PP); Wed, 12 Mar 1997 17:01:22 +0000
  10. Received: from phao.jungle.bt.co.uk by ferao.jungle.bt.co.uk (Jungle-SMTP-01) ID AA26040; Wed, 12 Mar 1997 16:56:41 GMT
  11. Message-Id: <3.0.32.19970312170348.00713870@sherekhan.jungle.bt.co.uk>
  12. X-Sender: rbriscoe@sherekhan.jungle.bt.co.uk
  13. X-Mailer: Windows Eudora Pro Version 3.0 (32)
  14. Date: Wed, 12 Mar 1997 17:03:49 +0000
  15. To: "Kindel, Charlie" <ckindel@MICROSOFT.com>,
  16.         "Watson, Andrew" <andrew@omg.org>
  17. From: Bob Briscoe <rbriscoe@jungle.bt.co.uk>
  18. Subject: [URN] The IETF Uniform Resource Names Working Group invites your comments
  19. Cc: urn-ietf@bunyip.com, leslie@bunyip.com (Leslie Daigle)
  20. Mime-Version: 1.0
  21. Content-Type: text/plain; charset="us-ascii"
  22. Sender: owner-urn-ietf@Bunyip.Com
  23. Precedence: bulk
  24. Reply-To: Bob Briscoe <rbriscoe@jungle.bt.co.uk>
  25. Errors-To: owner-urn-ietf@Bunyip.Com
  26.  
  27. Charlie, Andrew,
  28.  
  29. Leslie Daigle, the co-chair of the IETF URN working group has asked me to
  30. invite you two to comment on a problem I have just thrown into the IETF URN
  31. working group. Alternatively can you forward this to someone with the time
  32. and equivalent expertise to look into this?
  33.  
  34. The question is do you think the NAPTR proposal (see below) could be made
  35. to assimilate both "clsid:" and "IOR:" identifier schemes as a global
  36. naming glue?
  37.  
  38. To catch up on the conversation so far, see the mailing list archive at
  39. ftp://ftp.bunyip.com/pub/mailing-lists/urn-ietf.archive/urn-ietf.archive.970
  40. 3 - then search for the string "Interface References" in the subject line.
  41. I have attached the 3 postings in this thread so far as the archive is not
  42. ordered by thread.
  43.  
  44. To catch up on the proposal at issue, see the Internet draft at:
  45. http://www.acl.lanl.gov/URN/naptr.txt (identical to
  46. draft-ietf-urn-naptr-03.txt in your favourite internet-drafts directory).
  47.  
  48. Bob
  49.  
  50. ---No 1 in thread---
  51. >>>Date: Tue, 11 Mar 1997 14:59:39 +0000
  52. >>>To: urn-ietf@bunyip.com
  53. >>>From: Bob Briscoe <rbriscoe@jungle.bt.co.uk>
  54. >>>Subject: URNs grandfathering certain Object or Interface References
  55. >>>
  56. >>>Apologies if this has already covered - I've not being reading the URN
  57. list too carefully recently, but a scan of the archive and the latest NAPTR
  58. draft makes me think I have identified a new problem.
  59. >>>
  60. >>>The NAPTR proposal has a regexp/replacement field based on sed which is
  61. a text based transformation.
  62. >>>
  63. >>>DCE universally unique id's (UUIDs) used by Microsoft's COM (as well as
  64. DCE) and CORBA/2 Interoperable Object References (IORs) are typically
  65. generated to include a references to the service for resolving them but
  66. they can both be stringified to end up being a string of hex characters.
  67. Proposals have been put forward to introduce these as new URL schemes.
  68. >>>
  69. >>>Refer to:
  70. >>>The "clsid:" URL Scheme, Charlie Kindel, Microsoft Corporation, Feb 28
  71. 1996 Draft, <URL:http://www.w3.org/pub/WWW/Addressing/clsid-scheme>
  72. >>>
  73. >>>CORBA 2.0, Universal Network Objects, PTC/96-08-04, Object Management
  74. Group, Inc. July 1996 <URL:http://www.omg.org/corba/corbiiop.htm> [Section
  75. 10.6.5 Stringified Object References]
  76. >>>
  77. >>>You end up with URLs like:
  78. >>>clsid:EFF6744C-7143-11cf-A51B-080036F12502
  79. >>>or
  80. >>>IOR:000000000000001b9444c3a48656c6c6f576f726c642f476f6f644461793a312e3000
  81. 00000000010000000000000044000100000000000e3133302e31303a22e3137362e3900d7820
  82. 000002800504d43000000010000001448656c6c6f576f726c643a3a476f6f644461790000000
  83. 002cc52247e
  84. >>>
  85. >>>I don't know to much about UUIDS but I know that IORs are intended to be
  86. semi-resolvable outside the domain in which their id has true context, at
  87. least to the extent that the services they rely on for resolution, and the
  88. originating domain can be identified.
  89. >>>
  90. >>>The problem is that some COM/CORBA based systems can interpret these
  91. strings of hex digits to extract the machine/port etc. which hosts the
  92. object they need for resolution, but the algorithm isn't a simple textual
  93. transformation.
  94. >>>
  95. >>>How might NAPTR cope with this without just resorting to a replacement
  96. string and lumping the whole problem on one global resolver for the whole
  97. scheme leading to a horrible bottleneck?
  98. >>>
  99. >>>Alternatively, given that Object systems have their own location
  100. transparency schemes, might URN not be relevant here (then we'd have to
  101. rename them FURNs (Fairly Universal Resource Names)? I would have thought
  102. that if URN could be made relevant, it should be.
  103. >>>
  104. >>>Apologies in advance for anyone who wants me to explain these schemes in
  105. any more depth - my knowledge is fairly sketchy.
  106. >>>
  107. >>>Bob
  108.  
  109. ---No 2 in thread---
  110. >>From: leslie@bunyip.com (Leslie Daigle)
  111. >>Date: Tue, 11 Mar 1997 14:57:36 -0500
  112. >>To: Bob Briscoe <rbriscoe@jungle.bt.co.uk>, urn-ietf@bunyip.com
  113. >>Subject: Re: [URN] URNs grandfathering certain Object or Interface
  114. References
  115. >>
  116. >>Bob,
  117. >>
  118. >>I'm glad you've brought up a couple of emerging electronic namespaces that
  119. >>are clear candidates for URN namespaces.
  120. >>
  121. >>Ron may want to take a more detailed shot at NAPTR and the specific issues
  122. >>you've raised wrt the use of text-replacement only for these namespaces.
  123. >>
  124. >>I'd like to put a little context around the whole issue:
  125. >>
  126. >>    . As Ron is very good about reminding us regularly, NAPTR is 
  127. >>      meant to be an _experimental_ implementation of the general
  128. >>      architecture for URN systems.  It is proposed as experimental
  129. >>      specifically so that we can answer questions with concrete
  130. >>      experience on:
  131. >>
  132. >>        . what are the real security issues
  133. >>
  134. >>        .(most relevant here) what _is_ a sufficiently powerful 
  135. >>         and yet generally-implementable method for specifying
  136. >>         transformations? (regexps are already dangerously
  137. >>         complex, and yet there are clearly things they cannot do).
  138. >>
  139. >>> The problem is that some COM/CORBA based systems can interpret these
  140. >>> strings of hex digits to extract the machine/port etc. which hosts the
  141. >>> object they need for resolution, but the algorithm isn't a simple textual
  142. >>> transformation.
  143. >>> 
  144. >>> How might NAPTR cope with this without just resorting to a replacement
  145. >>> string and lumping the whole problem on one global resolver for the whole
  146. >>> scheme leading to a horrible bottleneck?
  147. >>
  148. >>The key thing to remember with the proposed URN resolution _framework_
  149. >>is that the first step in resolution is to determine the authority
  150. >>that _can_  assert machine, port, protocol for a particular URN.  I.e.,
  151. >>this is step one in distributing the problem.  Step two is to perform
  152. >>some kind of lookup at/of that authority to get that information.  The
  153. NAPTR 
  154. >>proposal uses the same basic DNS lookup algorithms for both of these
  155. steps, so 
  156. >>they start to look the same.  BUT, the key thing in finding a mapping from 
  157. >>UUIDs and IORs would be to determine how to find the authority for a
  158. particular 
  159. >>one, and then run some kind of local process there  to interpret the
  160. namespace-
  161. >>specific stuff (HEX code, here).
  162. >>
  163. >>So, bringing either of these namespaces into URN-land may not just be a
  164. question
  165. >>of throwing "URN:IOR:" or "URN:UUID:" at the beginning of the strings.  It
  166. >>may be the case that the process of developing these as URN namespaces will
  167. >>include attaching some reference to the authority that will be responsible
  168. >>for performing the analysis of the HEX representation.
  169. >>
  170. >>For example, 
  171. >>
  172. >>> clsid:EFF6744C-7143-11cf-A51B-080036F12502
  173. >>
  174. >>could become 
  175. >>
  176. >>  URN:clsid:<naming authority ID>:EFF6744C-7143-11cf-A51B-080036F12502
  177. >>
  178. >>or even
  179. >>
  180. >>  URN:clsid:EFF6744C-7143-11cf-A51B-080036F12502:<naming authority ID>
  181. >>
  182. >>The first step in resolving this URN is to identify that it is a clsid
  183. >>namespace URN -- this indicates how to go about finding the naming 
  184. >>authority ID, which can be textually extracted from either of the above.  
  185. >>
  186. >>Now, if that NA-ID can be mapped onto a machine name in some regular way
  187. >>(forget the pros and cons for a moment) then even NAPTR can be used to
  188. >>look up the alias, find the current address, port and protocol to speak
  189. >>to it to _resolve_ the clsid-specific string (the HEX resolution process).
  190. >>
  191. >>If you don't want to include such a NA-ID in the URN representation of the
  192. >>clsid, you _could_ set up NAPTR to route _all_ clsid URNs to one global
  193. >>service (which could be mirrored). Note that the global service doesn't
  194. have 
  195. >>to do the entire document resolution - it "only" has to apply the "hex 
  196. >>decoding" algorithm to the URN.  If that can't be done quickly, then it
  197. >>would be a bottleneck no matter where it was handled.  
  198. >>
  199. >>So, I don't see anything here that really breaks the paradigm of the URN
  200. >>framework acting as a "glue" that ties togethe multiple namespaces. It
  201. >>is a _good_ case of things to test NAPTR against -- are there people 
  202. >>involved with defining the UUID and IOR namespaces that are interested in
  203. >>taking on the mapping from those spaces into a URN representation?  This
  204. >>could be a great test-case for our grandfather-a-namespace issue, if
  205. >>somebody that represents those namespaces is willing to take it on.
  206. >>
  207. >>Leslie.
  208. >>
  209. >>-- 
  210. >>
  211. >>----------------------------------------------------------------------------
  212. >>
  213. >>  "_Be_                                           Leslie Daigle
  214. >>             where  you                           
  215. >>                          _are_."                 Bunyip Information Systems
  216. >>                                                  (514) 875-8611
  217. >>                      -- ThinkingCat              leslie@bunyip.com
  218. >>----------------------------------------------------------------------------
  219. >>
  220.  
  221. ---No 3 in thread---
  222. >Date: Wed, 12 Mar 1997 16:25:07 +0000
  223. >To: leslie@bunyip.com (Leslie Daigle)
  224. >From: Bob Briscoe <rbriscoe@jungle.bt.co.uk>
  225. >Subject: Re: [URN] URNs grandfathering certain Object or Interface References
  226. >Cc: urn-ietf@bunyip.com
  227. >
  228. >At 14:57 11/03/97 -0500, Leslie Daigle wrote:
  229. >>        .(most relevant here) what _is_ a sufficiently powerful 
  230. >>         and yet generally-implementable method for specifying
  231. >>         transformations? (regexps are already dangerously
  232. >>         complex, and yet there are clearly things they cannot do).
  233. >>
  234. >
  235. >I would suggest the reference in the CORBA spec I cited would be worth
  236. reading for the thinking on context relative naming from the OMG's members.
  237. There is years of academic thought and history behind it. CORBA naming
  238. interoperability between very different ORB domains is targeting the same
  239. problem as URN.
  240. >
  241. >See CORBA 2.0, Universal Network Objects, PTC/96-08-04, Object Management
  242. Group, Inc. July 1996 <URL:http://www.omg.org/corba/corbiiop.htm> [Section
  243. 10.5 & 10.6]
  244. >
  245. >>The key thing to remember with the proposed URN resolution _framework_
  246. >>is that the first step in resolution is to determine the authority
  247. >>that _can_  assert machine, port, protocol for a particular URN.  I.e.,
  248. >>this is step one in distributing the problem.  Step two is to perform
  249. >>some kind of lookup at/of that authority to get that information.  The
  250. NAPTR 
  251. >>proposal uses the same basic DNS lookup algorithms for both of these
  252. steps, so 
  253. >>they start to look the same.  BUT, the key thing in finding a mapping from 
  254. >>UUIDs and IORs would be to determine how to find the authority for a
  255. particular 
  256. >>one, and then run some kind of local process there  to interpret the
  257. namespace-
  258. >>specific stuff (HEX code, here).
  259. >>
  260. >>So, bringing either of these namespaces into URN-land may not just be a
  261. question
  262. >>of throwing "URN:IOR:" or "URN:UUID:" at the beginning of the strings.  It
  263. >>may be the case that the process of developing these as URN namespaces will
  264. >>include attaching some reference to the authority that will be responsible
  265. >>for performing the analysis of the HEX representation.
  266. >>
  267. >>For example, 
  268. >>
  269. >>> clsid:EFF6744C-7143-11cf-A51B-080036F12502
  270. >>could become 
  271. >>  URN:clsid:<naming authority ID>:EFF6744C-7143-11cf-A51B-080036F12502
  272. >>or even
  273. >>  URN:clsid:EFF6744C-7143-11cf-A51B-080036F12502:<naming authority ID>
  274. >>
  275. >>The first step in resolving this URN is to identify that it is a clsid
  276. >>namespace URN -- this indicates how to go about finding the naming 
  277. >>authority ID, which can be textually extracted from either of the above.  
  278. >
  279. >Duplicating the <naming authority ID> that is already embedded in the hex
  280. would be ANATHEMA to the reliability and security of the processes for
  281. publishing these names, not to mention performance which is why these
  282. things are stringified to hex rather than ASCII - a big winge the OO
  283. community has about IETF protocols is that they all appear to have been
  284. left permanently in de-bug mode so humans can read the protocol headers (I
  285. personally think this is a GOOD THING, but it does have performance problems).
  286. >
  287. >>
  288. >>Now, if that NA-ID can be mapped onto a machine name in some regular way
  289. >>(forget the pros and cons for a moment) then even NAPTR can be used to
  290. >>look up the alias, find the current address, port and protocol to speak
  291. >>to it to _resolve_ the clsid-specific string (the HEX resolution process).
  292. >>
  293. >>If you don't want to include such a NA-ID in the URN representation of the
  294. >>clsid, you _could_ set up NAPTR to route _all_ clsid URNs to one global
  295. >>service (which could be mirrored). Note that the global service doesn't
  296. have 
  297. >>to do the entire document resolution - it "only" has to apply the "hex 
  298. >>decoding" algorithm to the URN.  If that can't be done quickly, then it
  299. >>would be a bottleneck no matter where it was handled.  
  300. >
  301. >Again, this is ANATHEMA to the designers of these systems. We have to
  302. consider gazillions of object refs, bearing in mind that there's one for
  303. each *object* not just each class of *object*. For instance the (fixed
  304. size) DCE/COM name-space has been designed to be larger than the estimated
  305. number of atoms in the universe. The CORBA namespace is gazillions of
  306. orders of magnitude bigger than that (the number of permutations of atoms
  307. in the universe is more relevant to the number of possible permutations of
  308. objects, profiles and service environments).
  309. >
  310. >>
  311. >>So, I don't see anything here that really breaks the paradigm of the URN
  312. >>framework acting as a "glue" that ties togethe multiple namespaces.
  313. >
  314. >I think NAPTR is a neat trick for farming out the problem very early on,
  315. however, I think we may find these object-based schemes do break the
  316. *currently proposed* paradigm (although my understanding of how their names
  317. are constructed is sketchy), simply because of the performance requirements
  318. at huge scale. For instance, BT has already found experimental CORBA-based
  319. systems to be too slow to do 0800 (free phone) look-ups within the 500msec
  320. time budget we have between the end of dialling and ringing (before the
  321. caller hangs up thinking there's a problem). Just object location (id
  322. look-ups) for 4 objects out of c.1million currently takes more than this
  323. time budget. I'm not saying an *experimental* system like NAPTR should meet
  324. these requirements, but I am saying if the intention is to assimilate all
  325. naming, it has to be a *requirement* to *be able to* meet the *highest*
  326. common denominator performance target.
  327. >
  328. >>It
  329. >>is a _good_ case of things to test NAPTR against -- are there people 
  330. >>involved with defining the UUID and IOR namespaces that are interested in
  331. >>taking on the mapping from those spaces into a URN representation?  This
  332. >>could be a great test-case for our grandfather-a-namespace issue, if
  333. >>somebody that represents those namespaces is willing to take it on.
  334. >>
  335. >
  336. >I'll refer Charlie Kindel (Microsoft) and Andrew Watson (OMG chief
  337. architect) to the archive entries of this thread. I was going to do this
  338. anyway once I had done an initial sanity check with the URN working group.
  339. >
  340. >Bob
  341. ____________________________________________________________________________
  342. Bob Briscoe         http://www.labs.bt.com/people/briscorj/index.htm